Analyse statique par interprétation abstraite de systèmes hybrides

نویسنده

  • Olivier Bouissou
چکیده

ion de la partie continue Dans ce chapitre, nous présentons une abstraction de la partie continue des systèmes hybrides décrits au chapitre 5. Notre but est d’utiliser les algorithmes d’intégration garantie présentés au chapitre 3 comme une abstraction, au sens de l’interprétation abstraite, de la sémantique de la partie continue. Nous commençons donc par définir intuitivement les conditions que doit remplir une abstraction de l’environnement continu pour rentrer dans le cadre de l’interprétation abstraite (section 6.1), puis nous définissons formellement le domaine abstrait des fonctions en escalier à valeurs dans les intervalles (section 6.2) et nous donnons une représentation efficace de celles-ci sous forme d’une conjonction de contraintes. Les opérateurs abstraits d’union et d’intersection seront définis sur ce domaine des contraintes. Enfin, nous montrons que les algorithmes décrits au chapitre 3 forment des abstractions valides (section 6.3). Par ailleurs, nous expliquerons en détail un nouvel algorithme d’intégration garantie, nommé GRKLib, qui vise à limiter le wrapping effect inhérent aux méthodes à base d’arithmétique d’intervalles (sections 6.4 à 6.5). 6.1 But de l’abstraction de la partie continue La partie continue de notre modèle de systèmes hybrides est décrite par un ensemble d’équations différentielles. La sémantique continue est alors une fonction continue qui oscille entre les solutions de ces équations différentielles selon les instants auxquels le programme agit sur les actionneurs. Dans ce chapitre, nous ne nous intéressons qu’au cas où l’environnement continu est construit à partir d’une équation différentielle contenant éventuellement des paramètres discrets constants dans le temps qui permettent d’introduire éventuellement des incertitudes à l’équation différentielle. Nous verrons au chapitre suivant comment construire une abstraction complète de l’environnement continu à partir d’une abstraction du programme et d’une abstraction de chaque équation différentielle. Nous nous intéressons donc à une équation différentielle autonome, de degré 1 et de dimension n quelconque, que nous noterons ẏ = F (y,~k) où ~k ∈ R est un ensemble de paramètres constants dans le temps. Nous noterons P := ( ẏ = F (y,~k), y(0) = y0 ) le problème de Cauchy sous-jacent, avec y0 ∈ R. La sémantique de P est clairement la solution de ce problème ; la question de l’existence de la solution n’est pas discutée ici, on pourra se référer au chapitre 5 pour une discussion détaillée sur ce problème. Nous supposerons en particulier que F est globalement lipschitzienne pour toutes les valeurs possibles des paramètres ~k. La sémantique JP K de P est donc définie par : JP K : { R+ → R t 7→ y∞(t) tel que ∀t ∈ R+, ẏ∞(t) = F ( y∞(t),~k ) et y∞(0) = y0 . (6.1) 108 CHAPITRE 6. ABSTRACTION DE LA PARTIE CONTINUE 6.1.1 Sémantique collectrice d’une équation différentielle intervalle Comme nous l’avons fait pour la sémantique des programmes impératifs, nous définissons maintenant une sémantique collectrice pour les équations différentielles. Cette sémantique définit l’ensemble des comportements possibles décrits par une seule équation différentielle, tout comme la sémantique dénotationnelle collectrice définit l’ensemble des comportements possibles d’un programme pour un ensemble de valeurs d’entrée. Cependant, un problème de Cauchy définit, nous l’avons vu, un seul comportement qui est sa solution maximale. Nous étendons donc le concept de problème de Cauchy en autorisant les conditions initiales à être données sous forme d’intervalle (ce qui définit un ensemble de valeurs initiales possibles) et l’équation différentielle à avoir des paramètres fournis sous forme d’intervalle également (ce qui définit un ensemble de comportements possibles). Nous introduisons donc le concept d’équation différentielle intervalle. Définition 6.1 (Équation différentielle intervalle) Une équation différentielle intervalle (EDI) de dimension n est une relation entre une fonction y : D → R définie sur un ouvert D et sa dérivée temporelle ẏ : D → R, donnée par : ẏ(t) = F (y(t), ~ [k]) (6.2) où ~ [k] ∈ I R est un vecteur d’intervalles de dimension m et F : R → R. Par convention, nous noterons souvent l’EDI ẏ = F (y, ~ [k]). Exemple 6.1 L’équation ẏ = [−2,−1]× y définit une EDI de dimension 1. Dans une EDI, nous autorisons donc les paramètres de la fonction F à être des intervalles, ce qui nous permet d’obtenir des comportements différents. Nous étendons naturellement cette définition aux Problèmes de Cauchy intervalle. Définition 6.2 (Problème de Cauchy intervalle) Étant donnée une EDI ẏ = F (y, ~ [k]) et une condition initiale donnée sous forme d’intervalle y(0) ∈ [y0], le problème de Cauchy intervalle (PCI) consiste à trouver un ouvert D ⊆ R qui contienne 0 et l’ensemble des solutions aux problèmes de Cauchy classiques donnés par ẏ = F (y,~k), y(0) = y0 pour tout ~k ∈ ~ [k] et y0 ∈ [y0]. Nous noterons PCI l’ensemble de tous les problèmes de Cauchy intervalle. La sémantique collectrice d’un PCI P ∈ PCI, P := ( ẏ = F (y, ~ [k], y(0) ∈ [y0] ) , est donc un ensemble de fonctions continues donné par : LP M = n y ∈ C ` R+ → R ́ : ∃k ∈ ~ [k], y0 ∈ [y0] , y = Jẏ = F (y, k), y(0) = y0K o (6.3) Exemple 6.2 Le PCI P := ( ẏ = [−2,−1]× y, y(0) ∈ [0.5, 3] ) définit l’ensemble des fonctions de la forme y(t) = y0.e −k.t avec y0 ∈ [0.5, 3] et k ∈ [−2,−1]. La figure 6.1 représente graphiquement cet ensemble. 6.1.2 Caractéristiques nécessaires pour le domaine abstrait On voit donc que la sémantique collectrice d’un problème de Cauchy intervalle est un ensemble, potentiellement infini, de fonctions continues. Cet ensemble n’est généralement ni calculable ni représentable en machine. Il n’est pas calculable car, comme nous l’avons vu au chapitre 5, la sémantique concrète d’une EDO nécessite le calcul d’un point fixe via une itération infinie de l’opérateur de Picard modifié qui n’est lui-même pas calculable exactement en machine. Nous verrons que les algorithmes d’intégration garantie fournissent une abstraction calculable de ce

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Analyse statique de programmes et systèmes numériques

Alors que la complexité des traitements informatiques dans les systèmes embarqués croit chaque jour, la sûreté du fonctionnement de ces systèmes devient un enjeu crucial, tout particulièrement pour les systèmes critiques. Plus largement, synthétiser et garantir des propriétés sur le comportement d’un programme, est un objectif naturel et de large utilité. Cette habilitation (Putot, 2012) porte ...

متن کامل

Vérification partielle de programmes de contrôle-commande par interprétation abstraite

In the field of static analysis, abstract interpretation based techniques compute over approximations of the set of possible behaviors of programs. These over-approximations give properties on the program that can be used to prove the abscence of some bugs. In the case of control command programs, the behavior of the program depends on the physical environment with which it interacts. This envi...

متن کامل

Analyse statique par interprétation abstraite

Abstract interpretation was introduced as a generic framework, which allows to formalize, derive and prove static analyses, which are based on conservative approximation, that is, which are able to establish a fixed property for a subset of the programs which actually satisfy it. First, we provide a step by step description of the main steps in the design of such analyses, from the choice of a ...

متن کامل

Interprétation abstraite

Abstract interpretation is a theory of discrete approximation of the semantics of computer systems mainly applied to the static analysis and verification of software. MOTS-CLÉS : Interprétation abstraite, sémantique, vérification, analyse statique.

متن کامل

Différentiation automatique et formes de Taylor en analyse statique de programmes numériques

Résumé Des travaux récents sur l’analyse statique de programmes numériques ont montré que les techniques d’interprétation abstraite étaient adaptées à la validation de la précision des calculs en arithmétique flottante. L’utilisation des intervalles comme domaine numérique, même avec des méthodes de subdivision, induit une sur-approximation des résultats en particulier par l’existence de l’effe...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008